import utils.IndexException;

import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;

public class Test {
    public static void main(String[] args) {
        List<Integer> list2 = new LinkedList<>();
        list2.add(1);
        list2.add(2);
        list2.add(3);
        list2.add(4);
        list2.add(5);
        //使用for循环遍历链表
//        for(int i=0;i< list.size();i++){
//            System.out.print(list.get(i)+" ");
//        }
//        System.out.println();
//    }
        //使用foreach循环遍历链表
//        for (Integer x : list2) {
//            System.out.print(x + " ");
//        }
//        System.out.println();

        //使用迭代器遍历链表
//        ListIterator<Integer> in=list2.listIterator();
//        while(in.hasNext()){
//            System.out.print(in.next()+" ");
//        }
//        System.out.println();
        //使用ListIterator迭代器还可以逆序遍历链表
        ListIterator<Integer> in= list2.listIterator(list2.size()-1);
        while(in.hasPrevious()){
            System.out.print(in.previous()+" ");
        }
        System.out.println();

    }
}
//    public static void main1(String[] args) {
//        List<Integer> list=new LinkedList<>();
//        LinkedList<Integer> list1=new LinkedList<>();
//        list.add(1);
//        list.add(2);
//        list.add(3);
//        list.add(4);
//        list.add(5);
//        System.out.println(list);
//        list1.add(6);
//        list1.add(7);
//        list1.add(8);
//        list1.add(9);
//        System.out.println(list1);
//        list.addAll(list1);
//        System.out.println(list);
//    }
//    public static void main1(String[] args) {
//        LinkedList linkedList=new LinkedList();
//        linkedList.addLast(1);
//        linkedList.addLast(1);
//        linkedList.addLast(1);
//        linkedList.addLast(2);
//        linkedList.display();
//        linkedList.addFirst(1);
//        linkedList.addFirst(2);
//        linkedList.addFirst(3);
//        linkedList.addFirst(4);
//        linkedList.display();
//        int ret=linkedList.size();
//        System.out.println(ret);
//        try{
//            linkedList.addIndex(2,100);
//
//        }catch (IndexException e){
//            e.printStackTrace();
//        }
//        linkedList.display();
//        linkedList.remove(1);
//        linkedList.display();
//        linkedList.removeAllKey(1);
//        linkedList.clear();
//        linkedList.display();

//    }
//}
